package com.clc.cc.common.extension;

/**
 * ClassName: ExtensionScope
 * Description:ExtensionScope
 *
 * @see SPI
 * @author chengluchao
 * @date: 2024/5/31 14:40
 * @since cc1
 */
public enum ExtensionScope {

    /**
     * The extension instance is used within framework, shared with all applications and modules.
     *
     */
    FRAMEWORK,

    /**
     * The extension instance is used within one application, shared with all modules of the application,
     * and different applications create different extension instances.
     *
     */
    APPLICATION,

    /**
     * The extension instance is used within one module, and different modules create different extension instances.
     *
     */
    MODULE,

    /**
     * self-sufficient,
     * */
    SELF
}